#ifndef _SERVER_SESSION_FACTORY_H_
#define _SERVER_SESSION_FACTORY_H_

#include "MemoryPoolFactory.h"
#include "Singleton.h"
#include "const.h"



class ServerSession;
class TempServerSession;
class GameServerSession;



class ServerSessionFactory : public Singleton<ServerSessionFactory>
{
public:
	ServerSessionFactory();
	~ServerSessionFactory();

	ServerSession*								AllocServerSession( eSERVER_TYPE eServerType );
	VOID										FreeServerSession( ServerSession * pServerSession );

private:
	CMemoryPoolFactory<TempServerSession>		*m_pTempServerPool;
	CMemoryPoolFactory<GameServerSession>		*m_pGameServerPool;
	
};


#endif // __SERVER_SESSION_FACTORY_H__